package mymodel

import (
	"github.com/gogf/gf/v2/os/gtime"
)

// DistributeTableResponse 分发表响应模型
type DistributeTableResponse struct {
	Id            int64       `json:"id"            orm:"id"              description:""`
	TimeBy        int         `json:"timeBy"        orm:"time_by"         description:"时间分片机制  1按年 2按月 3按天 4按小时"`
	TimeStart     uint64      `json:"timeStart"     orm:"time_start"      description:"按月（yyyymm）按日（yyyymmdd） 按年（yyyy）这些时间点对应的秒级时间戳-结束"`
	TimeEnd       uint64      `json:"timeEnd"       orm:"time_end"        description:"按月（yyyymm）按日（yyyymmdd） 按年（yyyy）这些时间点对应的秒级时间戳-结束"`
	ServerKey     string      `json:"serverKey"     orm:"server_key"      description:"分库"`
	Table         string      `json:"table"         orm:"table"           description:"分表[mysql表名长度不能超过64，需要限制]"`
	Flag          string      `json:"flag"          orm:"flag"            description:"数据类型标识(aeparam, viparam,aeviparam,wave等)"`
	CreatedAt     *gtime.Time `json:"createdAt"     orm:"created_at"      description:"创建"`
	UpdatedAt     *gtime.Time `json:"updatedAt"     orm:"updated_at"      description:"更新"`
	IsExpire      int         `json:"isExpire"      orm:"is_expire"       description:"是否启动过期 0未启用 1启用"`
	ExpireTime    int64       `json:"expireTime"    orm:"expire_time"     description:"过期时间点"`
	TotalAmount   int64       `json:"totalAmount"   orm:"total_amount"    description:"总数据量（服务器统计）"`
	TotalSize     int64       `json:"totalSize"     orm:"total_size"      description:"总占据大小(MB)"`
	DeviceGroupId int64       `json:"deviceGroupId" orm:"device_group_id" description:"设备分组id"`
	DeptId        int64       `json:"deptId"        orm:"dept_id"         description:"部门id"`
	SummaryStatus int         `json:"summaryStatus" orm:"summary_status"  description:"统计状态 1标识统计完了 0标识未统计完"`
	ExpireStatus  int         `json:"expireStatus"  orm:"expire_status"   description:"清理状态 0标识未清理 1标识清理了"`
	DeptName      string      `json:"deptName"           description:"部门"`
}

type SearchDistributeTablesObj struct {
	Id            int64  `json:"id"          orm:"id"           description:""` // 可选
	TimeStart     int64  `json:"timeStart"          orm:"time_start"           description:"起始秒级时间戳"`
	TimeEnd       int64  `json:"timeEnd"          orm:"time_end"          description:"结束秒级时间戳"`
	Flag          string `json:"flag"          orm:"flag"          description:""`
	DeviceGroupId int64  `json:"deviceGroupId" orm:"device_group_id" description:"设备分组id"`
}
